package com.sunlake.spring.main.common.model.pay.service;

import com.alipay.api.AlipayApiException;
import com.sunlake.spring.main.common.model.pay.dto.PayRequestDTO;

import java.util.Map;

public interface PayService {
    /**
     * 生成支付宝支付二维码
     */
    String generatePayQrCode(String subject, String body, String totalAmount, String timeoutExpress) throws AlipayApiException;

    /**
     * 生成支付宝支付二维码（支持更灵活的参数）
     */
    String generatePayQrCode(PayRequestDTO payRequestDTO) throws AlipayApiException;

    /**
     * 处理支付宝异步通知
     */
    boolean handlePayNotify(Map<String, String> params);

    String queryTradeStatus(String outTradeNo) throws AlipayApiException;
}